NeXT Nugget News Digest (vol. 5, issue 6, November 4, 1992) TABLE OF CONTENTS I. Integrity Solutions Announces An Extended Beta Program for FrontDesk, a Network Message Center II. Announcing CodeCheck from Abraxas (Posix compliance testing for C and C++) III. September NeXTSTEP Developer mailing (Release 3.0 enhancements checklist) IV. Call For Beta testers for MicroPhone Pro Module V. NightShade Announces TalkBack, versatile conferencing NeXTSTEP App VI. Opportunities for NeXTSTEP Developers and Contractors VII. NeXT SysAdmin Position Open in Beverly Hills, California VIII. Open Position: Systems Engineer, NeXT Computer, Inc. Ann Arbor, Michigan All previous Nugget News Digest issues are archived at the Purdue ftp archive site: sonata.cc.purdue.edu under... /pub/next/submissions/Nugget_News_Digest_Q2_1992.tar.Z /pub/next/submissions/Nugget_News_Digest_Q3_1992.tar.Z Conrad Geiger Manager, International NeXT User Groups P.S. To be added or deleted from this distribution, please send email to "nugget@next.com." ____________________________________________________________________ I. Integrity Solutions Announces An Extended Beta Program for FrontDesk, a Network Message Center St. Paul, MN. Oct 6, 1992 - Integrity Solutions announces an Extended Beta Program for FrontDesk, a networked office productivity tool. FrontDesk merges "While You Were Out" telephone message notes and a traditional "In/Out" board with the powerful network capabilities of NeXTSTEP. Featuring a Client/Server architecture, FrontDesk provides a cost effective solution to keeping track of telephone messages and availability of office staff. Some of the FrontDesk features include: - Client/Server Architecture - Integrated In/Out Board and "While You Were Out" Messaging System - Optional NeXTMail message delivery - Hot Keys for "I am Back", "I'm Gone" and "Do Not Disturb" - Operates over SLIP connections - Full RTF support in all message and comment fields - Urgent messages are color-coded (User selectable) - Type-ahead user list selection - Message summary printing - User defined personal profiles - Date and time stamps for updates - Support for NeXT mail pictures - Icon animation alerts for unread messages - API for Third Party Development "Before FrontDesk and our network of NeXT computers, we would have to make a special point of going up the the receptionist 2-4 times a day to make sure we had all of our current messages," said Dr. John Andrews of the College of Veterinary Medicine at Iowa State University in Ames, Iowa. "Many of our messages would be a few hours old when we retrieved them," he continued, "FrontDesk has been a blessing, now we know immediately when a call is received." The Extended Beta program offers interested NeXT users to beta test Front Desk with a special version of the application that allows an unlimited number network users. The Beta program will expire on November 15, 1992 and Beta testers will have the opportunity of buying the first release version for a substantial discount. "Our custom development heritage shows with this beta release of FrontDesk," said Rodger McBride, product manager of the FrontDesk project. "We see this as a first round in a suite of networked office productivity products. Our role is implementing solutions driven by our customers needs." For more information or to enroll in the Extended FrontDesk Beta Program, contact; Rodger McBride, FrontDesk Product Manager Integrity Solutions 32 Empire Dr. St. Paul, MN 55103 Telephone: (612) 223-8484 NeXTMail: frontdesk@is.com Integrity Solutions is a custom application developer located in St. Paul, Minnesota. They provide custom software solutions specializing in Workflow, Database and Executive Information Systems for clients in the Legal, Law Enforcement, Medical and Corporate environments. FrontDesk is their first product in a suite of Networked Office Productivity Solutions. NeXT Computer, Inc., headquartered in Redwood City, Calif., designs, manufactures and markets professional workstations, which combine the power and networking of today's most advanced workstations with the ease of use and productivity applications of today's best personal computers. NeXT's professional workstation systems promise to enhance the way groups of people work together in the 1990s. NeXT and NeXTSTEP are trademarks of NeXT Computer, Inc. ____________________________________________________________________ II. Announcing CodeCheck from Abraxas (Posix compliance testing for C and C++) Until now, there has been no automated way for programmers to determine if the programs they write are in conformance with the Posix standards. Abraxas Software has released "CodeCheck," an expert system tool that will examine C and C++ source code for compliance to POSIX.1, AT&T UNIX System V, and Berkeley UNIX standards. CodeCheck assists programmers in their development process by providing friendly suggestions wherever their code fails to comply to the standards. Single user licenses start at $XXX, site and educational discounts are available. For more information, contact Patrick Conley, President of Abraxas Software Phone - (503) 244-5253 FAX - (503) 244-8375. ____________________________________________________________________ III. September NeXTSTEP Developer mailing This went out in the recent September NeXTSTEP developer mailing. Hope you find it useful! Sharon Zakhour Developer Support appkit.845 Release 3.0 enhancements checklist 3.0 Enhancement Checklist [or "How to be 3.0 Hip"] When you update your application to Release 3.0, following is a list of features you should strongly consider adding to your application to take advantage of the new 3.0 feature set. This information is provided as a checklist and primarily consists of features every 3.0 application should probably support. There are many other new and exciting 3.0 features (such as Distributed Objects, 3DKit, DBKit, Indexing Kit, Phone Kit) that are not mentioned here because they are relevant to a smaller set of applications. - Object links Every application running under NeXTstep 3.0 should take advantage, if at all possible, of the powerful ability to link external data or files into the documents of an application. Likewise a document- or data-oriented application should support exporting data links. Linking is performed using the familiar Copy/Paste metaphor for data and the Drag-n-Drop metaphor for files programmers should consider implementing both forms of object links. Bundled applications that import data links are Edit and Draw. Bundled applications that export data links are Draw, IconBuilder, and Graph. See the 3.0 Examples Graph and Draw, the AppKit and ObjectLinks Release Notes, and the NXDataLink spec sheets for more information on how to implement object linking. - Filter services A Filter service is a new 3.0 type of Service which has no menu item but supports the ability to convert a piece of data from one type to another. Every application can take advantage of filter services when opening files (via +typesFilterableTo: if it can open a standard type, like RTF) and when importing data via copy/paste or dragging (via +imagePasteboardTypes). Other applications can provide filter services: for example, if you have some code which converts your document format [the WonderFormat] to RTFD, then you should provide this functionality as a filter service. Another application which understands RTFD but not WonderFormat can still import WonderFormat documents and the filter service will do the work of the conversion. The other advantage of providing a filter to ascii is that your documents then become indexable by Digital Librarian. See the 3.0 Appkit Release Notes and the Pasteboard spec sheet for more information on: +typesFilterableTo:, +newByFilteringFile:, +newByFilteringData:, +newByFilteringTypesInPasteboard:. - New dragging mechanism The drag and drop mechanism is new and improved in 3.0. Under 2.x, drag and drop was implemented using the registerWindow:, etc. methods. [These methods will continue to work in 3.0 but are being obsoleted.] For 3.0, a new Workspace Protocol has been added which supports interapplication dragging in View and Window classes and should actually simplify your code. The new dragging mechanism can be used both for inter-application dragging and intra-application dragging (as in palettes). See the 3.0 Appkit Release Notes and the View, Window and NXDraggingDestination spec sheets for more information on (to name some of the methods involved): -registerForDraggedTypes:, -draggingEntered:, -draggingUpdated:, -draggingExited:, -prepareForDragOperation:, -performDragOperation: and -concludeDragOperation:. - Dragging TIFF and EPS [i.e. image] data As a side note, any application which supports drag and drop of TIFF or EPS should (instead of registering for ".tiff" and ".eps" explicitly) register for [NXImage imagePasteboardTypes]. This method returns a NULL terminated list of strings and allows your application to take advantage of other image types that NXImage knows how to convert between, such as the RIB format (if libMedia is linked with your application) or other formats supported via the filter services mechanism. See the Appkit Release Notes and the NXImage spec sheet for more information on +imagePasteboardTypes. [Note: all applications that import data via NXImage should start linking with libMedia.] - Dragging colors Another side note: applications should no longer use the -acceptColor:atPoint: method for accepting colors. [The -acceptColor: method will continue to work for 3.0 but should be avoided.] Dragging colors should be implemented via the normal drag/drop protocols with the NXColorPBoardType. See the 3.0 Appkit Release Notes for more information on -acceptColor: and NXColorPBoardType. - Undo Undo is a very powerful mechanism that we strongly encourage all 3.0 applications to support. To this end, the Draw Example (in /NextDeveloper/Examples/Appkit/Draw) illustrates a whole framework for supporting Undo. Draw has three subprojects which implement Undo and two of these subprojects have been designed so that they can be added to an existing application with minimal effort: a reusable Change class, a reusable UndoText class, and a class specific to Draw. See the UndoDoc.rtf and UndoREADME.rtf files in the Draw Example for more information. - Help The Help facility is another powerful user mechanism that has been integrated into InterfaceBuilder for 3.0 that every application should support. The easiest way to implement Help in your application is to use the Help panel to display any help files you may have already written. The next level of implementation involves attaching help files to each of the buttons, menus and other controls in your application. For more information on how to implement Help, see the 3.0 InterfaceBuilder and Appkit Release Notes, the NXHelpPanel spec sheet and the Draw Example. - Device independent color: calibrated RGB and Pantone Colors should be set via the NXSetColor() function and should use NXColor for color storage. (Colors should not be set via PSsetrgbcolor() if you wish to take advantage of device independent color.) Applications using NXSetColor() and NXColor can take advantage (for free) of the calibrated RGB color space in Release 3.0 which emits device independent colors to all Level 2 devices. See the 3.0 Appkit and WindowServer Release Notes for further information on NXSetColor() and the NXColor spec sheet. - Restoring Windows to previous location and size Persistent windows can now take advantage of the new Window methods which allow saving and restoring a window by name. These methods use the defaults database to store the position and size of the window so that when you recreate the window it will adopt the same characteristics. See the 3.0 Appkit Release Notes and the Window class spec sheet for more information on: -saveFrameUsingName:, -setFrameUsingName:, -setFrameAutosaveName:, -frameAutosaveName and -removeFrameUsingName:. - Creating a Workspace contents inspector You can now create your own contents inspector which Workspace will use when one of your documents is selected. See the 3.0 IntroWorkspace.rtf document and the WMInspector class spec sheet for more information on building an inspector module. - Find text object The ability to find text has been added to the Text object making it much easier to implement a text search panel. See the Text class spec sheet for more information on -findText:. - RTFD The Text object now supports reading, writing and editing the RTFD file format. (Under 2.x the Text object only supported reading and writing of straight ascii and RTF files.) See the 3.0 Appkit Release Notes and the Text class spec sheet for more information on (to name a few of the methods): -setGraphicsImportEnabled:, -saveRTFDTo:, -openRTFDFrom: and -writeRTFDTo:. - Localization While making an application localizable to other languages was encouraged under the 2.x release of NeXTSTEP, it is now easier to implement in 3.0 with additional support in InterfaceBuilder and ProjectBuilder. Under 3.0, any application created via ProjectBuilder will automatically bundle the nib files, binary and other necessary files into an NXBundle (which looks suspiciously like an app wrapper in days of yore). All methods in the Appkit which used to look in the mach-O section to find something, now look in [NXBundle mainBundle] if the desired object is not in the mach-O section. See the 3.0 Localization Chapter of the Concepts Manual for more information on how to make your application localizable for 3.0. [Note: Localizing an application is different than making that application localizable. Localizing involves the actual translation while making it localizable puts the framework in place so that it can be translated usually by someone other than the programmer.] - Keyboard key codes are not portable to other platforms The keyCode information (available in the event data for key events) is device-dependent for a particular keyboard (and is documented as such). NeXT recently started shipping a keyboard with new key codes and any application which relied on the old raw key codes will almost certainly perform differently. In order to keep software as portable to as many platforms as possible, an application should avoid examining raw key codes at all costs. (It is safe to use charSet and event flags along with charCode to distinguish between key events.) To quickly determine if your application uses raw key codes, search your source files for the string "keyCode". - Copying/moving/compressing/destroying files via the Workspace Any application which supports copying or moving files around (or compressing or destroying files, to name some of the supported functions) should use the new Workspace Protocol method -performFileOperation:. This method allows you to ask the Workspace to perform an operation such as copying or moving a file and will update the Processes panel with the Background process information and the animated pie chart. See the 3.0 Appkit Release Notes and NXWorkspaceRequestProtocol spec sheet for more information on -performFileOperation: and the list of operations it supports. ____________________________________________________________________ IV. Call For Beta testers for MicroPhone Pro Module Software Ventures has completed a Loran module for MicroPhone Pro for NeXTSTEP which will send faxes, and we would like to beta-test it. If you 1> Have MicroPhone Pro v 1.0 for NeXTSTEP 2> Use Loran 3> Run System 3.0 4> Have a fax modem and send faxes on a regular basis Then we would like you to beta-test the fax module. As always, our Loran modules are free for use by all MicroPhone Pro owners. After the beta cycles are done, we will make the module available on our bbs and on the anonymous ftp sites (assuming they let me upload it there). -- Michael Rutman | moose@svcdudes.com Cubist | makes me a NeXT programmer Software Ventures | maker of MicroPhone Pro _____________________________________________________________________ V. NightShade Announces TalkBack, versatile conferencing NeXTSTEP App FOR IMMEDIATE RELEASE CONTACT: NightShade Software Box 60063, U of A Postal Outlet Edmonton, Alberta Canada T6G 2S4 Phone: (403) 439-8718 E-MAIL: nshade@niagara.ucs.ualberta.ca ANNOUNCING: Unlimited TalkBack 1.0 DEMO NightShade Software is proud to announce the release of a unlimited demo version of TalkBack, a versatile conferencing application for the NeXT computer. TalkBack 1.0 offers an easy to use NeXTMail-like interface, and allows any number of users with NeXTs connected to a TCP/IP network to interactively send messages consisting of voice, rich-text, and file-attachments to each other. All messages are stored in a local archive for later review. TalkBack uses a true peer-to-peer network model, meaning that there is no centralized "server". Users can create, join, and exit conferences at any time. A single user can participate in any number of conferences at once using the NeXT's standard "Multiple Document" metaphor. DETAILS ON "UNLIMITED DEMO" TalkBack version "1.0 DEMO" is FREE. That's right, it costs $0.00, and is not crippled in any way. Why are we doing this? We started writing TalkBack using NeXTSTEP 2.1. Being a small company, we didn't have advance access to 3.0 like the Big Guys. Now that we have 3.0, we've decided that TalkBack can greatly benefit from the use of the new 3.0 features. We were faced with a tricky decision -- should we ignore 3.0 for a while longer, and polish off the 2.1 version of TalkBack, or should we devote all our energy to creating a new TalkBack, taking full advantage of NeXTSTEP 3.0 (and make people wait even longer)? We decided to try something a bit different. We have frozen development of the 2.1-compatible TalkBack, and are releasing it as freeware, so that the people who have been waiting for TalkBack can start using it, while we work on the much more powerful TalkBack for 3.0. Here are the catches: - TalkBack 1.0 is distributed as-is, with no warranties or support of any kind - TalkBack 1.0 will not be upgraded in any way, including bug fixes or new features - TalkBack 1.0 will not be message-compatible with future versions of TalkBack - TalkBack 1.0 is NOT in the public domain; it can be freely distributed, but not sold - Persons wishing to distribute TalkBack 1.0 as part of a collection of NeXT demonstration software should contact NightShade Software for permission Work is already underway on the 3.0-specific version of TalkBack. This will NOT be a free program; it will be a fully supported commercial application, with many powerful new features. AVAILABILITY: TalkBack is available for anonymous ftp from the following archive sites: sonata.cc.purdue.edu (/pub/next/2.0-release/demos) cs.orst.edu (/pub/next/demos) The file is named TalkBack1.0.tar.Z. Note that it may initially be located in /pub/next/submissions on either of the above sites. If you don't have Internet access, or don't know how to use anonymous ftp, contact NightShade software for alternate shipping options. ____________________________________________________________________ VI. Opportunities for NeXTSTEP Developers and Contractors Fortune 500 opportunities for NeXTSTEP developers are available on the East coast, Texas, Illinois, Washington, England, and Europe. All opportunities are for long term on-site development with other top notch NeXT pros. Minimum 6 months NeXTSTEP and Objective C experience. For more info, call Jay Wallen (who has been independently retained to recruit) at 212-410-1400 or FAX at 212-534-3724. ____________________________________________________________________ VII. NeXT SysAdmin Position Open in Beverly Hills, California NeXT TRAINING & USER SUPPORT MANAGER FRO LOS ANGELES AREA The William Morris Agency is a large talent agency bearing the distinction of being the world's oldest. Approximately 200 employees in Beverly Hills and 100 in New York use NeXT computers on a company-wide network. NeXTs are used for general office automation in support of the individual talent agent's daily activities securing jobs for our clients in all facets of the entertainment business. The NeXT Training & User Support Manager helps to maximize the agency's investment in NeXT by ensuring that demanding users in a hectic environment are well trained and supported. The NeXT Training & User Support Manager also serves as the liaison with and representative of users in the continuing development, implementation and review of custom software. Position reports to MIS Director. Essential Job Functions include but are not limited to: TRAINING - Design, develop and produce all training materials, e.g. WMA specific procedures ("How To's"), In-class workbooks, visual teaching aids - Provide training for new and current users of Beverly Hills NeXT network - Analyze training needs on an on-going basis to develop solutions and assist users in attaining maximum efficiency from NeXT system. - Supervise training/support staff to assist in training effort. - Manage NeXT training function company-wide USER SUPPORT - Manage user support function for Beverly Hills office on a daily basis. - Be second source of support for help calls. TECHNICAL - Test/analyze new software packages for relevancy to the user population. - Analyze user business requirements and identify best short- or long-term methods to satisfy same. Analysis may result in changes to user procedures, use of existing software, purchase of additional software, or indicate need for custom programming. - Design, develop and produce custom software documentation Other job functions include but are not limited to: - Bi-monthly status reports to MIS Director - Assist MIS Director and other NeXT staff as needed QUALIFICATIONS - Four year college degree - Experience in each of the following areas: - as power PC, Mac or NeXT (a plus) computer user including familiarity with several different software packages - providing support to computer users - as trainer including needs analysis and development of material - Communication skills (verbal and written) - Ability to learn quickly - Personal flexibility and patience - Ability to work as part of a team - Organizational skills - Managerial ability - Ability to recognize areas for improvement and devise appropriate recommendations Contact: Phone: Leslie Dunlevy at (310) 859-4274 between 2:30 and 5:30pm Mail: Lealie Dunlevy William Morris Agency 151 El Camino Drive Beverly Hills, CA 90212 Email: resume@wma.com (use only standard NeXT fonts) ____________________________________________________________________ VIII. Open Position: Systems Engineer, NeXT Computer, Inc. Ann Arbor, Michigan THIS IS A PRE-SALES SYSTEMS ENGINEERING POSITION REQUIRING EXCELLENT SOFTWARE DEVELOPMENT, NETWORK AND SYSTEMS ENGINEERING, AND VERBAL COMMUNICATION SKILLS. NeXT Systems Engineers provide the technical expertise necessary to close sales, and generally evangelize the NeXT product family. SE's must possess superb technical skills and a sense of innovation, combined with a personality which promotes cooperation, trust, and the sharing of ideas. The successful candidate will have a mix of software engineering skills, and enjoy working with people and new technology. Duties and Responsibilities: - Rapid prototyping of software for feasibility analysis - Technical presentations to all levels of customers - Integration of NeXT computers with existing systems - Technical account management - Provide strategic input and guidance to sales, marketing, and engineering, regarding market conditions, product requirements, and overall program successes or failures A typical NeXT Systems Engineer will spend one-third of their time writing NeXTSTEP applications for customer-based prototyping or proof-of-concept efforts, one-third consulting one-on-one with potential and existing customers on software development and network engineering, and one-third performing presentations and demonstrations of NeXTSTEP. Necessary Skills: - Solid software engineering background - Ability to articulate technically complex issues to a wide variety of audiences - Demonstrated aptitude at working independently - Ability to work with limited supervision in an autonomous, results-oriented environment - Ability to work within a team environment - Strong problem solving skills - Ability to juggle multiple tasks - B.S.C.S or equivalent with 4 years experience required; M.S.C.S preferred Relevant Experience: - NeXTSTEP, Objective-C, Mach - UNIX systems programming/systems administration - Object-oriented programming - Advanced application programming in C, LISP, and FORTRAN (or equivalent) - Windowing application development (Macintosh, X11, MSWindows, etc.) - Database application development (Sybase, Oracle, etc.) - TCP/IP, NFS, YP/NIS - PostScript - Pre-sales support experience For more information please send a cover letter, resume, and salary history via email to Central_Area_Jobs@NeXT.com or fax to 312.329.0285. Responses without cover letters will not be considered. Please include at least one paragraph which reflects on how your skills and experience will enable your success as a Systems Engineer for NeXT. ____________________________________________________________________ IX. FREE OFFER to NeXT USERS who perform DATA ANALYSIS from S+ Instructional Video 'An Introduction to Intelligent Data Analysis' Take complete control of your data and statistical analysis. Dear NeXT User Group member or NeXT User: Are you using modern software tools for data and statistical analysis? Are you visually examining and interactively exploring your data to gain maximum understanding... ..or are you just processing data? Find out how you can clearly visualize, easily manipulate, better understand, and ultimately gain superior interpretation of your data with our free instructional video. Request 'An Introduction to Intelligent Data Analysis' today by calling us at (800) 569-0123 or (206) 283-8802. Investigate the unique control you have to manage an analysis. Graphically see what you've been missing in your data. Learn how to use an interactive, object-oriented data language to easily view and explore your data so you can check your assumptions and ensure correct analyses. Understand when to use modern, robust methods that will give you better results and not misguided interpretations of your data. Most of today's analysis packages rely on a rigid "plug and chug" approach which is very limiting--it doesn't embody data visualization techniques which help provide a comprehensive understanding of your data. Without the benefit of modern, interactive analysis techniques you may miss important relationships in your data. If these relationships are not uncovered, you may overlook the best method for analyzing your data and end-up with poor interpretations. In just 15 minutes our new instructional video will illustrate, step-by-step, how to perform modern data analysis in an interactive and graphical computing environment. 'An Introduction to Intelligent Data Analysis' ---------------------------------------------- -Demonstrates how quickly you can query your data to explore relationships. -Reveals how, with great efficiency, you can employ various statistical methods to find the best fit to your data. -Shows how to gain powerful insights into multivariate data through data visualization in a dynamic, 3-dimensional environment. -Illustrates why an object-oriented data analysis language gives you special flexibility and control unsurpassed for investigating data. -Demonstrates how an interactive language environment allows you to save any of your data or analysis routines into user-defined objects which you can retrieve and then remanipulate for further investigation and study. -Reveals the power of building custom functions for your preferred methods, plotting routines, or analysis functions, configuring them in an automated sequence anyone can run. -Shows how to use a data analysis language coupled with a menu building toolkit to create a dedicated, menu-driven analysis system. -Demonstrates how easily you can create customized on-screen plots and graphs of your analysis, and print them out. -Illustrates examples of advanced, modern methods including generalized additive models, robust methods, survival analysis, tree-based models, time-series, and much more... So why delay? Request your free video today. All you have to do is call and ask for it. Learn how these new, interactive, and visual techniques can benefit your analyses. And please note--thousands of your colleagues are performing interactive, visual data and statistical analysis everyday with S-PLUS. Our video,'An Introduction to Intelligent Data Analysis', will show you why. S-PLUS has over 1200 functions (see below for a summary list) for performing almost any type of interactive data manipulation or statistical analysis. In fact, 'PC Magazine' said, "The real power of S-PLUS is its flexibility... the program can be used for virtually any kind of statistical analysis." Many of these methods are highlighted in the video. What's more, S-PLUS's interactive, object-oriented language gives you the control to interactively explore and visually analyze data as you've never been able to before. So please return the reply card, or better yet give us a call. We are happy to share this important new instructional video with you absolutely free. It's yours to keep, learn from, and share with your colleagues. You can't go wrong--it's free! But remember to respond quickly. This offer is good only while supplies last. P.S. And if you'd like, we'd also be happy to send you a complimentary Trial Copy of the new 3.1 version of S-PLUS. It's a full version with free technical support; yours to try for 30 days without obligation. CALL 1-800-569-0123 (or 206-283-8802). Statistical Sciences, Inc. 1700 Westlake Ave. N. Suite 500 Seattle, WA 98109, USA Tel: (800) 569-0123 or (206) 283-8802 Fax: (206) 283-8691 Email: mktg@statsci.com S-PLUS VERSION 3.1 FOR UNIX WORKSTATIONS AND COMPUTE SERVERS Statistical Sciences, Inc. (StatSci), based in Seattle, Washington, is pleased to announce Version 3.1 of S-PLUS for UNIX Workstations and servers. S-PLUS is an extensible, interactive language and software application used for graphical data analysis, statistics and mathematical computing. It also provides both a data analysis environment and an object-oriented language for development of quantitative applications. GENERAL DESCRIPTION OF S-PLUS Version 3.1 ========================================= S-PLUS is a fully supported superset of the April, 1992 release of The S Language from AT&T Bell Labs. S provides hundreds of data analysis functions which are embodied in their own C-like language. This language-basis allows greater flexibility for easy modification or extension of existing functions and also allows the user to define new functions in the language and/or to incorporate their own Fortran or C programs. StatSci adds a number of statistical and graphical functions, provides service and support services, sells S-PLUS in binary format for specific workstations (S can only be purchased as unsupported source code), and provides complete documentation for S-PLUS. PARTIAL LIST OF IMPORTANT S-PLUS FEATURES ========================================= EDA AND PRESENTATION GRAPHICS ----------------------------- S-PLUS provides enhanced window system interfaces for X11, and SunView. Under X11, the user can choose an OPEN LOOK, Motif, or Athena style. The S-PLUS plot windows provide a palette of mouse-driven selections including point and click for instant laser printer output (PostScript and LaserJet printers), plot orientation, text point size, color selection, and copy creation. Multiple plots can be placed on one page or screen, or plots can be overlayed. HIGH INTERACTION GRAPHICS ------------------------- High-interaction graphics are provided in the form of pairwise scatter plots, 3-D point cloud rotation, marginal histograms and scrollable case listings, all with linked brushing. GREY-SCALE AND COLOR IMAGING ---------------------------- A function is included for creating grey-scale or color image plots. STATISTICAL MODELING LANGUAGE ---------------------------- S-PLUS comes with a modern statistical modeling language which provides a common syntax for describing and fitting a wide variety of classical and modern, robust models. Built-in models include: * Linear Models * ANOVA Models, balanced and unbalanced * Nonlinear Models * Generalized Linear Models * Generalized Additive Models * Local Regression Models (loess) * Tree-based Regression Models CLASSICAL INFERENCE ------------------- S-PLUS now contains a basic set of classical methods for estimation and testing. The methods contained in Version 3.1 include: Procedure: Comments ---------- ----------------------------------- t-test one-, two-, and paired-samples Welch's test for two samples correlation tests Pearson's,Spearman's rho,Kendall's tau Wilcoxon tests one-, two-, and paired-samples Kruskal-Wallis test Friedman test tests of proportions exact and chi-square approximation contingency table tests Fisher's exact & chi-square approx. Mantel-Haenszel test McNemar test for symmetry Additionally, several discrete distributions including the binomial, hypergeometric and Wilcoxon distributions have been added to S-PLUS. ANALYSIS OF VARIANCE -------------------- Fixed Effects Random Effects Factorial Models Nested Models Graphical Procedures: Location plots for each level of each factor Box plots for each level of a factor Interaction plots Half-normal probability plots of effects DESIGN OF EXPERIMENTS --------------------- Full and Fractional Factorial Orthogonal Array EXPLORATORY REGRESSION ---------------------- Stepwise Multiple Regression All Possible Subsets Regression Generalized Additive Models Regression Model Linearization (ACE) Additivity and Variance Stabilization for regression (AVAS) Projection Pursuit Regression SCATTERPLOT SMOOTHERS --------------------- Kernel Smoothers Friedman and Stuetzle's "Super Smoother" Robust Locally Weighted Regression Smoother (Lowess) TIME SERIES ----------- Univariate ARIMA models Multivariate AR models Robust Fits for univariate AR models Fractionally-Differenced ARIMA Modeling Complex Demodulation Spectral Analysis General specification of filters and smoothers Robust filters and smoothers ROBUST METHODS -------------- Bisquare estimates of location and scale M-Estimate Regression Minimum Absolute Residual Regression Least Median of Squared Residuals (LMS) Regression Least Trimmed Squares Regression Generalized M-estimates of AR parameters in time series Robust estimates of location and scale in time series Robust filters and smoothers for time series SURVIVAL ANALYSIS ----------------- Survival Curves including Kaplan-Meier and Fleming-Harrington Cox Proportional Hazards Models Anderson-Gill modification to the Cox Model for time-dependent covariates G-rho family of tests for differences between survival curves MULTIVARIATE METHODS -------------------- Linear Discriminant Analysis Cluster Analysis -- Hierarchical and k-means Model-based Hierarchical Clustering and Classification Principal Components Analysis Canonical Correlation Multidimensional Scaling EXTENSIBILITY ------------- Object-Oriented Programming Language Interface to UNIX Interfaces to Fortran and C Static Loading of Fortran or C Code Dynamic Loading of Fortran or C Code INTERACTIVE HELP SYSTEM ----------------------- S-PLUS comes with a point-and-click help system which allows the user to scroll through a list of topics to easily identify the specific S-PLUS functions for which assistance is needed. INTERACTIVE DATA EDITOR ----------------------- S-PLUS comes with a built-in spreadsheet-like data editor (for X11 based systems only). It allows you to put a data matrix in a row-column structure, and to navigate the structure and view and edit data values. PARTIAL LIST OF FEATURES NEW TO S-PLUS 3.1 ========================================== NEW FUNCTIONS FOR MATHEMATICAL COMPUTATION ------------------------------------------ Many new functions for mathematical computing have been added to S-PLUS 3.1. Included are functions for integration, optimization, finding roots, multivariate minimization with bounds, nonlinear least squares with bounds, and more. Version 3.1 also includes support for complex numerical linear algebra. QUALITY CONTROL CHARTING AND FUNCTIONS -------------------------------------- S-PLUS version 3.1 implements both Shewhart and cusum charts for monitoring continuous and discrete processed. IMPROVEMENTS IN POSTSCRIPT SUPPORT ---------------------------------- A new device, called "postscript", has been created for producing postscript output. The new "postscript" includes all of the capabilities of the old "postscript" and "pscript" device drivers, plus some additional new features. The new features provide the user with greater control over color, fonts and international character sets. SUPERIOR SPEED PERFORMANCE AND MEMORY UTILIZATION ------------------------------------------------- Improvements resulting in both faster execution speeds, and less use of memory are included in S-PLUS 3.1. Initial tests indicate that the new software consumes significantly less memory and less execution time. Users can expect improvements when using "for" loops, working with large data sets, or performing simulations. COLOR OUTPUT OF THE "IMAGE" GRAPHIC ----------------------------------- The "image" graphic can now be produced in color on a postscript printer. Version 3.1 provides the user with control over the color map much like when desplaying the graphic with on screen X11 based devices. Additional documentation about how to set up and select color maps for output is included. ==================================================================== UNIX PLATFORM OFFERINGS ======================= Sun4/SPARC (SunOS 4.x, Solaris 1.x) Silicon Graphics IRIS-4D, Indigo HP9000/3xx, 4xx, 7xx, 8xx (HP-UX 8.x or higher) DEC RISC (Ultrix) NeXT (requires X11 for Graphics) IBM RS-6000 (AIX 3.2) (PC version also available; inquire for information) SUPPORT ======= Software and documentation updates S-PLUS hot-line phone support Statistical consulting Training courses in Seattle or on-site TECHNICAL NEWSLETTER ==================== The S-PRESS, an S/S-PLUS technical newsletter series commenced in June '90. Anyone wishing to receive the S-PRESS may do so by sending their surface mail address to StatSci's electronic or surface mail address provided below. REBATE PROGRAM ============== StatSci offers a rebate program for users of New S who wish to convert to S-PLUS. DISCOUNTS ========= Educational and non-profit discounts, academic site licenses, and volume purchase discounts are available. FOR MORE INFORMATION ==================== Email: mktg@statsci.com Surface: StatSci 1700 Westlake Ave N Phone: (800)569-0123/(206) 283-8802 Seattle, WA 98109l USA Fax: (206)283-8691 __________________________________________________ end